﻿Public Class frmMonHoc

    Sub LoadDanhSach()
        Dim dt As DataTable
        dt = MonHocDAO.SelectAll()

        dgvMonHoc.DataSource = dt

    End Sub
    Sub Them()
        Dim mh As MonHocDTO = New MonHocDTO()
        mh.Mamon = txtMaMH.Text
        mh.Tenmon = txtTenMH.Text
        mh.Sotinchi = txtTinChi.Text
        mh.Hocky = cmbHK.Text
        mh.Namhoc = cmbNamHoc.Text
        MonHocDAO.Insert(mh)
        LoadDanhSach()
    End Sub
    Sub Xoa()
        Dim mh As MonHocDTO = New MonHocDTO()
        mh.Mamon = txtMaMH.Text
        MonHocDAO.Delete(mh)
        LoadDanhSach()
    End Sub
    Sub Sua()
        Dim mh As MonHocDTO = New MonHocDTO()
        mh.Mamon = txtMaMH.Text
        mh.Tenmon = txtTenMH.Text
        mh.Sotinchi = txtTinChi.Text
        mh.Hocky = cmbHK.Text
        mh.Namhoc = cmbNamHoc.Text
        MonHocDAO.Update(mh)
        LoadDanhSach()
    End Sub
    Sub Tim()
        Dim mh As MonHocDTO = New MonHocDTO()
        mh.Mamon = txtMaMH.Text
        mh.Tenmon = txtTenMH.Text
        'mh.Sotinchi = txtTinChi.Text
        mh.Hocky = cmbHK.Text
        mh.Namhoc = cmbNamHoc.Text
        dgvMonHoc.DataSource = MonHocDAO.SelectByMH(mh)
    End Sub
    Sub Clear()
        txtMaMH.Text = ""
        txtTenMH.Text = ""
        txtTinChi.Text = ""
        cmbHK.Text = ""
        cmbNamHoc.Text = ""
        txtMaMH.Focus()
    End Sub
    Sub Hien_thi_hocky()

        'Khai báo ArrayList  
        Dim hocky As New ArrayList()

        'Đưa vào ArrayList  giá trị
        hocky.Add("I")
        hocky.Add("II")

        'Đưa mảng vào ComboBox
        cmbHK.DataSource = hocky
    End Sub
    Sub hien_thi_namhoc()
        'Khai báo ArrayList  
        Dim namhoc As New ArrayList()
        'Đưa vào ArrayList  giá trị
        namhoc.Add("2008-2009")
        namhoc.Add("2009-2010")
        namhoc.Add("2010-2011")
        namhoc.Add("2011-2012")
        namhoc.Add("2012-2013")
        namhoc.Add("2013-2014")
        namhoc.Add("2014-2015")
        'Đưa mảng vào ComboBox
        cmbNamHoc.DataSource = namhoc
    End Sub
    Private Function CheckDataInput() As Boolean
        If txtMaMH.Text = "" Then
            MsgBox("Nhập Mã Môn Học, không để rỗng !", MsgBoxStyle.Critical + MsgBoxStyle.OkOnly, "Thông báo")
            Return False
            txtMaMH.Focus()
        ElseIf txtTenMH.Text = "" Then
            MsgBox("Mhập tên môn học, không để rỗng !", MsgBoxStyle.Critical + MsgBoxStyle.OkOnly, "Thông báo")
            Return False
            txtTenMH.Focus()
        ElseIf IsNumeric(txtTenMH.Text) Then
            MsgBox("Tên môn học phải là chữ! không được nhập số", MsgBoxStyle.Critical + MsgBoxStyle.OkOnly, "Thông báo")
            Return False
            txtTenMH.Text = ""
            txtTenMH.Focus()
        ElseIf txtTinChi.Text = "" Then
            MsgBox("Hãy nhập số tín chỉ, không để rỗng !", MsgBoxStyle.Critical + MsgBoxStyle.OkOnly, "Thông báo")
            Return False
            txtTinChi.Focus()
        ElseIf cmbHK.Text = "" Then
            MsgBox("Hãy chọn học kỳ, không để rỗng !", MsgBoxStyle.Critical + MsgBoxStyle.OkOnly, "Thông báo")
            Return False
            cmbHK.Focus()
        ElseIf cmbNamHoc.Text = "" Then
            MsgBox("Hãy chọn năm học, không để rỗng !", MsgBoxStyle.Critical + MsgBoxStyle.OkOnly, "Thông báo")
            Return False
            cmbNamHoc.Focus()

        End If
        Return True
    End Function
    Sub HienThi()
        If (dgvMonHoc.SelectedRows.Count > 0) Then
            txtMaMH.Text = dgvMonHoc.SelectedRows(0).Cells(0).Value.ToString()
            txtTenMH.Text = dgvMonHoc.SelectedRows(0).Cells(1).Value.ToString()
            txtTinChi.Text = dgvMonHoc.SelectedRows(0).Cells(4).Value.ToString()
            cmbNamHoc.Text = dgvMonHoc.SelectedRows(0).Cells(3).Value.ToString()
            cmbHK.Text = dgvMonHoc.SelectedRows(0).Cells(2).Value.ToString()
        End If
    End Sub
    Private Sub btnxoa_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnXoa.Click
        If dgvMonHoc.SelectedRows.Count > 0 Then
            If MsgBox("Bạn có muốn xóa?", MsgBoxStyle.Question + MsgBoxStyle.YesNo, "Thông báo") = MsgBoxResult.Yes Then
                Xoa()
                LoadDanhSach()
                Clear()
            Else
                Exit Sub
            End If
        Else
            MsgBox("Chọn mẫu tin cần xoá !", MsgBoxStyle.Question + MsgBoxStyle.OkOnly, "Thông báo")
        End If
    End Sub



    Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click
        Clear()

    End Sub

    Private Sub btntim_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTim.Click
        Tim()
    End Sub


    Private Sub txtTinChi_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTinChi.KeyPress
        'Buộc nhập số
        If (Not Char.IsNumber(e.KeyChar) And _
        Not Char.IsControl(e.KeyChar)) Then
            e.Handled = True
        End If
    End Sub



    Private Sub btnThoat_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnThoat.Click
        Me.Close()
    End Sub


    Private Sub btnThem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnThem.Click
        Dim dt As New DataTable
        dt = MonHocDAO.SelectAll
        Dim tam As Integer = 0
        Dim i As Integer = 0
        While i <= dt.Rows.Count - 1
            If dt.Rows(i)("Mamon") = txtMaMH.Text Then
                tam += 1
                i += 1
            Else
                i += 1
            End If
        End While
        If tam > 0 Then
            MsgBox("Không được nhập trùng Mã Môn Học ! Nhập lại !")
            txtMaMH.Text = ""
            txtMaMH.Focus()
        Else
            If CheckDataInput() = True Then
                Them()
                Clear()
            End If
        End If
    End Sub


    Private Sub frmMonHoc_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Hien_thi_hocky()
        hien_thi_namhoc()
        LoadDanhSach()
    End Sub

    Private Sub dgvMonHoc_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles dgvMonHoc.SelectionChanged
        HienThi()
    End Sub

    Private Sub btnSua_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSua.Click
        Dim dt As New DataTable
        dt = MonHocDAO.SelectAll
        Dim tam As Integer = 0
        Dim i As Integer = 0
        While i <= dt.Rows.Count - 1
            If dt.Rows(i)("Mamon") = txtMaMH.Text Then
                tam += 1
                i += 1
            Else
                i += 1
            End If
        End While
        If tam > 0 Then
            MsgBox("Không được nhập trùng Mã Môn Học ! Nhập lại !")
            txtMaMH.Text = ""
            txtMaMH.Focus()
        Else
            If CheckDataInput() = True Then
                Sua()
                Clear()
            End If
        End If
    End Sub

    Private Sub btnIn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIn.Click
        Dim f As New frmBaoCaoMon
        f.Show()
    End Sub

    Private Sub Label6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label6.Click

    End Sub
End Class


